class_name CardPile
extends Resource

signal card_pile_size_changed(cards_amount)

@export var cards: Array[Card] = []

#思考:下面的函数怎么用？ 正是因为不知道怎么用，所以这里会不理解
#判断当前卡片组是否为空
func empty() -> bool:
	return cards.is_empty()

#从卡片组中取一张卡片
func draw_card() -> Card:
	var card = cards.pop_front()
	card_pile_size_changed.emit(cards.size())
	return card

#向卡片组中添加一张卡片
func add_card(card: Card):
	cards.append(card)
	card_pile_size_changed.emit(cards.size())

#打乱卡牌
func shuffle() -> void:
	cards.shuffle()

#清空卡牌
func clear() -> void:
	cards.clear()
	card_pile_size_changed.emit(cards.size())

#循环输出每张卡牌的顺序和ID	
func _to_string() -> String:
	var _card_strings: PackedStringArray = []
	for i in range(cards.size()):
		_card_strings.append("%s: %s" % [i + 1, cards[i].id])
	return "\n".join(_card_strings)











	
